package com.sg.business.permission.model;


public abstract class PermissionVisitorFactory {
	
	public static final String ORGANIZATION_ROLE = "orgrole";

	public static final String PROJECT_ROLE = "pjrole";
	
	public static final String PROJECT_ROLE_DEFINITION = "roledef";

	public static final String USER = "user";

	public static final String ORGANIZATION = "org";

	public static final String TEAM = "team";
	
	public static final String ALL = "all";
	
	public static final String OWNER = "owner";
	
	public IPermissionVisitor createVisitor() {
		return new PermissionVisitor(getId(), getType(), getName());
	}

	protected abstract String getName() ;


	protected abstract String getType() ;


	protected abstract Object getId() ;
}
